import axios from './axios';

const BASE_URL = '/api/menu';

// 获取菜单树
export function getMenuTree() {
  return axios.get(`${BASE_URL}/tree`);
}

// 获取菜单详情
export function getMenuById(id) {
  return axios.get(`${BASE_URL}/${id}`);
}

// 创建菜单
export function addMenu(data) {
  return axios.post(`${BASE_URL}`, data);
}

// 更新菜单
export function updateMenu(data) {
  return axios.put(`${BASE_URL}/${data.id}`, data);
}

// 删除菜单
export function deleteMenu(id) {
  return axios.delete(`${BASE_URL}/${id}`);
}

// 获取角色菜单
export function getRoleMenus(roleId) {
  return axios.get(`${BASE_URL}/role/${roleId}`);
}

// 分配角色菜单
export function updateRoleMenus(roleId, menuIds) {
  return axios.post(`${BASE_URL}/role/${roleId}/assign`, menuIds);
}

// 获取去除按钮的菜单树
export function getMenuTreeNoButton() {
  return axios.get(`${BASE_URL}/tree-no-button`);
}

// 获取用户菜单（包含按钮）
export function getUserMenus(userId) {
  return axios.get(`${BASE_URL}/user/${userId}`);
} 